import Vue from 'vue'
import VueRouter from 'vue-router';
import routes from './routes';
import setTitle from '@/utils/setTitle.js';

// 使用 cdn 加速的时候，不需要安装插件
if (!window.VueRouter) {
    Vue.use(VueRouter);
}

// 创建 router 实例
const router = new VueRouter({
    routes, // router 配置
    mode: 'history' // 路由的模式
})

// 路由前置守卫
router.beforeEach((to, from, next) => {
    // 当访问的页面不存在，跳转 404 页面
    if (to.matched.length === 0) {
        next({
            name: '404'
        })
    } else {
        next();
    }
})

// 路由后置守卫
router.afterEach((to) => {
    // 页面跳转成功后，设置页面的 title 值
    let title = to.meta.title || '';
    setTitle.setRouteTitle(title);
})

export default router;